#include "list.h"
#ifndef Open_Compiler_SYMTAX_HEADER
#define Open_Compiler_SYMTAX_HEADER

typedef enum {
    IMMEDIATE,
    VARIABLE,
    UNARY_OPERATOR,
    BINARY_OPERATOR,
    BLOCK,
    IF_STATEMENT,
    RETURN_STATMENT,
    DEFINE_VAR,
    FUNCTION,
    FUNCTION_ARGUMENTS,
    ASSIGNMENT,
    WHILE_SYNTAX,
    TOP_LEVEL
} SyntaxType;
typedef enum {BITWISE_NEGATION, LOGICAL_NEGATION} UnaryExpressionType;
typedef enum {
    ADDITION,
    SUBTRACTION,
    MULTIPLICATION,
    LESS_THAN,
    LESS_THAN_OR_EQUAL,
} BinaryExpressionType;
struct Syntax;
typedef struct Syntax Syntax;
typedef struct Immediate {int value;} Immediate;

typedef struct Varaible {
    //在此保存数据类型
    char *var_name;
} Varaible;


#endif